Интерфейс Интерфейс гетерогенных вычислений для портируемости (HIP) предоставляет интерфейс программирования на языке С++, абстрагирующий аппаратные слои, чтобы обеспечить единый код для графических процессоров как от NVIDIA, так и от AMD. Этот путь устраняет привязку к производителю, имитируя среду CUDA при работе с платформой ROCm бэкендом.
1. Настройка окружения
Инициализация начинается с установки переменных среды для указания компилятора hipcc компилятора на правильную инструментальную цепочку:
$ export PATH=$PATH:[MYHIP]/bin
2. Стандартизация инструментальной цепочки
Интерфейс hipcc компилятор действует как умный обёртыватель. Для автоматизации сборки используется логика HIP_PATH ?= $(shell hipconfig --path) логика гарантирует, что ваш файл Makefile динамически найдёт установку HIP независимо от конфигурации системы.
3. Логика версионирования
HIP использует детерминированную формулу версионирования для программного управления доступностью функций в разных релизах:
$$\text{HIP\_VERSION} = \text{HIP\_VERSION\_MAJOR} \times 10^7 + \text{HIP\_VERSION\_MINOR} \times 10^5 + \text{HIP\_VERSION\_PATCH}$$
4. Основные эквиваленты среды выполнения
HIP предоставляет hipMalloc и hipLaunchKernel в качестве функциональных аналогов вызовов памяти и выполнения из CUDA, что позволяет использовать философию разработки «единственный источник».